package com.softeem.ints;

/**
 * 非静态的方法
 * 考虑:
 *  equals
 *  hashcode
 *  toString
 */
public class Demo_05 {
    public static void main(String[] args) {
        Integer x = new Integer(10);
        System.out.println(x.toString());

        Integer y = new Integer(10);
        System.out.println(x == y);//false  因为进行了对象的创建,Integer是引用数据类型,所以里面进行了地址的比较

        boolean flag = x.equals(y);//覆盖了父类的equals方法,比较的是值
        System.out.println(flag);//true


        //int转Integer
        //1、使用构造函数进行创建
        int a = 10;
        Integer x1 = new Integer(a);
        Integer x2 = new Integer("10");

        //2、通过Integer类中的静态方法valueOf()
        //底层将int类型进行了自动装箱的操作,会调用valueOf()
        Integer x3 = Integer.valueOf(a);


        //Integer 转 int
        //通过Integer非静态的方法 intValue()
        //底层使用自动拆箱的时候,将Integer转换成int会调用intValue方法
        Integer i1 = new Integer(10);
        int i2 = i1.intValue();

    }
}
